
int rcvr;
int method;
unsigned char *pc;
int *sp;
int homeContext;
int activeContext;

int recycleContext;
int recyclableDepth=0;

int implicitReceiver( int rcvr, int method, int selector );
int implicitReceiverForMixinImplementing(int receiver, int mixin, int selector);
int findApplicationOfTargetMixinStartingAtBehavior(int targetMixin, int aBehavior);
int nextImplicitReceiverForWithMixin(int anObject, int mixin, int selector);
int findApplicationOfTargetMixinStartingAtNonMetaClass(int targetMixin, int aClass);

int defines(int md, int s);

void push(int value);
int pop();
int popNandPush(int n, int object);
int peek(int depth);
int top();

void loadContextRegistersFrom(int context);
void saveContextRegisters();

int firstCodePointerFor(int method);
void sendSpecial(int lobits);
void send(int selector, int argCount, int doSuper);
void invoke(int newmethod, int argc);
void doReturn(int value, int returnContext);
